package com.wxg.demo;

import java.io.File;
import java.util.ArrayList;
import java.util.List;

import org.beetl.core.GroupTemplate;
import org.beetl.core.Template;

import com.jfinal.core.Controller;
import com.jfinal.render.ContentType;
import com.wxg.utils.MyBteetl;
import com.wxg.utils.MyFileReader;

public class JQueryDocsController extends Controller {
	
	/**
	 * 生成首页列表的连接
	 * 使用了beetl模板引擎
	 */
	public void index(){
		String FOLDER = "jQueryDocs";
		String sp = File.separator;
		String spp = "/";
		
		/**
		 * https://www.cnblogs.com/duoting/p/4141044.html
		 * 获取web目录的方法参考上面URL
		 * HttpServletRequest cannot be resolved to a type: 需要引入servlet-api-2.5.jar
		 */
		String webpath = getRequest().getSession().getServletContext().getRealPath("");
		
		List<String> filelist = new ArrayList<String>();
		
		try {
			File file = new File(webpath + sp + FOLDER);
			if(file.isDirectory()){
				File[] allFiles = file.listFiles();
				if(null != allFiles){
					String filename = null;
					for(File item : allFiles){
						if(item.isDirectory()){
							continue;
						}
						filename = item.getName().trim();
						filelist.add(filename);
					}
				}
			}
		} catch (Exception e) {
			e.printStackTrace();
		}
		GroupTemplate gt = MyBteetl.strGt();
		MyFileReader mfr = new MyFileReader("com/wxg/demo/tpl/tplIndex.html");
		Template template = gt.getTemplate(mfr.readAll());
		template.binding("filelist", filelist);
		
		/**
		 * updage at 2018年2月18日
		 * 修改了"requestURL"的值.
		 * 1) getRequest().getRequestURL()  : 使用这个url,有bug,会受到当前url的影响
		 * 2) getRequest().getContextPath() : 使用这个url,就不会有上面的烦恼
		 */
		//template.binding("requestURL", getRequest().getRequestURL().toString());
		template.binding("requestURL", getRequest().getContextPath() + spp + FOLDER);
		
		renderText(template.render(), ContentType.HTML);
	}
	
}
